package com.cy.pj.sys.dao;

import com.cy.pj.sys.pojo.SysNotice;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/*
* 由mybatis框架去定义，用于描述数据持久层接口
* */
@Mapper
public interface SysNoticeDao {//系统底层会基于jdk中的proxy
    /*基于条件查询通告信息
    * @param notice
    * @return 返回查询到的通告信息
    * */
    List<SysNotice> selectNotice(SysNotice notice);
    /* 将内存中的notice对象，持久化到数据库 * */
    int deleteById(@Param("ids") Long... ids);//@param向前兼容


    int updateNotice(SysNotice notice);

    /**将内存中的notice对象，持久化到数据库*/
    int insertNotice(SysNotice notice);
//    基于id查询notice信息
//    @parm id 查询条件
//    return 查询到notice对象（储存表中的一行记录）
//    说明 简单的sql映射可以直接将sql语句写到方法上，进行映射
    @Select(value = "select * from sys_notice where id=#{id}")
    SysNotice seclectById(@Param("id")long id);


    List<SysNotice> selectNotices(SysNotice notice);

    SysNotice selectById(Long id);
}
